Telegram Group & Telegram Channel
Combining Induction and Transduction for Abstract Reasoning [2024]

В прошлом посте про ARC я расссказал про решение, которая даёт 62% в комбинации с так называемым синтезатором программ. Сегодня мы поговорим о том, что это за зверь.

Авторы рассматривают 2 подхода к решению ARC:

1) Transduction - это когда у нас есть нейросеть, получающая на вход тренировочные пары вход-выход + тестовый вход и предсказывающая тестовый выход - такую модель мы как раз и видели в тот раз.
2) Induction - получая на вход тренировочные пары вход-выход, мы генерируем программу на питоне, превращающую вход в выход. Затем мы применяем её на тестовом входе

Итак, начнём с того, как авторы собирали датасет для Induction-модели.

Сначала авторы собирают вручную так называемый seed-датасет - это 100 ARC-задач, для которых вручную написаны программы на питоне, а также текстовые описания этих задач. Далее GPT-4 просят наплодить большой датасет синтетических задач, рекомбинируя описания и код изначальных ста.

На таких данных можно делать нечто похожее на обучение задачкам по программированию: дообучаем LLM по задаче гененировать питон код, а во время инференса генерируем много программ-кандидатов, которые потом можно фильтровать, проверяя на тренировочных парах.

Интересный сюжетный поворот - задачи, которые решают Transduction и Induction-модели, даже если их учить на одних и тех же сетах задач, пересекаются далеко не полностью. В самом топовом запуске Induction набирает 38%, Transduction 43%. а их ансамбль аж 57%. Авторы проверили, что это не результат случайной инициализации.

Ансамблировать их, кстати, можно и вслепую - если Induction-модель не сгененировала ни одну программу, которая подходит под тренировочные примеры, мы в качестве решения выдаём Transduction-кандидата.

Интересно понять - откуда берётся такое отличие в решаемых задачах у 2 подходов, даже если их учат на одном и том же? Немножко пролить на это свет помогает Ablation на задачах из ConceptARC - упрощённом датасете, в котором применяется одна "абстрактная концепция".

Например, программный синтезатор сильно лучше справляется с извлечением объектов и подсчётом, тогда как трансдуктор лучше в раскрасках и чём-то подобном. Примеры задач, приведённые автором, я прикрепил к посту.

Статья интересная, правда, есть те же опасения по поводу утечки задач через эту самую синтетику. Маленькая версия их модели, которую они засабмитили в настоящий тест, дала 18% через Transduction и только 4% через Induction (ансамбль дал 19%, SOTA = 55.5%) - это может говорить о том, что базовые операции сильно отличаются у скрытого теста и так просто справиться с ним не выйдет. Будем следить за развитием событий.

@knowledge_accumulator



tg-me.com/knowledge_accumulator/239
Create:
Last Update:

Combining Induction and Transduction for Abstract Reasoning [2024]

В прошлом посте про ARC я расссказал про решение, которая даёт 62% в комбинации с так называемым синтезатором программ. Сегодня мы поговорим о том, что это за зверь.

Авторы рассматривают 2 подхода к решению ARC:

1) Transduction - это когда у нас есть нейросеть, получающая на вход тренировочные пары вход-выход + тестовый вход и предсказывающая тестовый выход - такую модель мы как раз и видели в тот раз.
2) Induction - получая на вход тренировочные пары вход-выход, мы генерируем программу на питоне, превращающую вход в выход. Затем мы применяем её на тестовом входе

Итак, начнём с того, как авторы собирали датасет для Induction-модели.

Сначала авторы собирают вручную так называемый seed-датасет - это 100 ARC-задач, для которых вручную написаны программы на питоне, а также текстовые описания этих задач. Далее GPT-4 просят наплодить большой датасет синтетических задач, рекомбинируя описания и код изначальных ста.

На таких данных можно делать нечто похожее на обучение задачкам по программированию: дообучаем LLM по задаче гененировать питон код, а во время инференса генерируем много программ-кандидатов, которые потом можно фильтровать, проверяя на тренировочных парах.

Интересный сюжетный поворот - задачи, которые решают Transduction и Induction-модели, даже если их учить на одних и тех же сетах задач, пересекаются далеко не полностью. В самом топовом запуске Induction набирает 38%, Transduction 43%. а их ансамбль аж 57%. Авторы проверили, что это не результат случайной инициализации.

Ансамблировать их, кстати, можно и вслепую - если Induction-модель не сгененировала ни одну программу, которая подходит под тренировочные примеры, мы в качестве решения выдаём Transduction-кандидата.

Интересно понять - откуда берётся такое отличие в решаемых задачах у 2 подходов, даже если их учат на одном и том же? Немножко пролить на это свет помогает Ablation на задачах из ConceptARC - упрощённом датасете, в котором применяется одна "абстрактная концепция".

Например, программный синтезатор сильно лучше справляется с извлечением объектов и подсчётом, тогда как трансдуктор лучше в раскрасках и чём-то подобном. Примеры задач, приведённые автором, я прикрепил к посту.

Статья интересная, правда, есть те же опасения по поводу утечки задач через эту самую синтетику. Маленькая версия их модели, которую они засабмитили в настоящий тест, дала 18% через Transduction и только 4% через Induction (ансамбль дал 19%, SOTA = 55.5%) - это может говорить о том, что базовые операции сильно отличаются у скрытого теста и так просто справиться с ним не выйдет. Будем следить за развитием событий.

@knowledge_accumulator

BY Knowledge Accumulator




Share with your friend now:
tg-me.com/knowledge_accumulator/239

View MORE
Open in Telegram


Knowledge Accumulator Telegram | DID YOU KNOW?

Date: |

That growth environment will include rising inflation and interest rates. Those upward shifts naturally accompany healthy growth periods as the demand for resources, products and services rise. Importantly, the Federal Reserve has laid out the rationale for not interfering with that natural growth transition.It's not exactly a fad, but there is a widespread willingness to pay up for a growth story. Classic fundamental analysis takes a back seat. Even negative earnings are ignored. In fact, positive earnings seem to be a limiting measure, producing the question, "Is that all you've got?" The preference is a vision of untold riches when the exciting story plays out as expected.

How Does Telegram Make Money?

Telegram is a free app and runs on donations. According to a blog on the telegram: We believe in fast and secure messaging that is also 100% free. Pavel Durov, who shares our vision, supplied Telegram with a generous donation, so we have quite enough money for the time being. If Telegram runs out, we will introduce non-essential paid options to support the infrastructure and finance developer salaries. But making profits will never be an end-goal for Telegram.

Knowledge Accumulator from ar


Telegram Knowledge Accumulator
FROM USA